package io.gitee.hfl.rocketmq.annotation;

import org.apache.rocketmq.client.apis.consumer.FilterExpressionType;
import org.springframework.stereotype.Component;

import java.lang.annotation.*;

/**
 * @author hefulin
 */
@Documented
@Component
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface RocketConsumer {

    /**
     * 绑定的消费组
     */
    String group();

    /**
     * consumer 过滤表达式
     */
    SubscriptionExpression[] subscriptionExpressions() default {@SubscriptionExpression(topic = "*", expression = "*")};

    /**
     * 开启线程数
     */
    int threadNums() default 0;

    /**
     * 消费者启动个数
     */
    int nums() default 0;

    /**
     * 容器名
     */
    String value() default "";

    /**
     * 是否开启
     */
    boolean enable() default true;

}
